home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BCI NET
/
BCI NET Dec 94.iso
/
archives
/
programming
/
e
/
debug_m.lha
/
debug.asm
next >
Wrap
Assembly Source File
|
1994-08-14
|
2KB
|
148 lines
XDEF kcmpstr_ii
XDEF kgetchar
XDEF kgetnum
XDEF kmaygetchar
XDEF kputfmt_ii
XDEF kputchar_i
XDEF kputstr_i
ABSEXECBASE EQU $4
kputchar_i:
MOVE.L 4(A7),D0
LAB_0001:
MOVE.L A6,-(A7)
MOVEA.L ABSEXECBASE,A6
JSR -516(A6)
MOVEA.L (A7)+,A6
RTS
kputstr_i:
MOVEA.L 4(A7),A0
LAB_0003:
MOVE.B (A0)+,D0
BEQ.S LAB_0004
BSR.S LAB_0001
BRA.S LAB_0003
LAB_0004:
RTS
kgetchar:
BSR.S kmaygetchar
TST.L D0
BMI.S kgetchar
RTS
kmaygetchar:
MOVE.L A6,-(A7)
MOVEA.L ABSEXECBASE,A6
JSR -510(A6)
MOVEA.L (A7)+,A6
RTS
kputfmt_ii:
MOVEA.L 8(A7),A0
MOVEA.L 4(A7),A1
MOVEM.L A2,-(A7)
LEA.L LAB_0001(PC),A2
BSR.S LAB_0009
MOVEM.L (A7)+,A2
RTS
LAB_0009:
MOVE.L A6,-(A7)
MOVEA.L ABSEXECBASE,A6
JSR -522(A6)
MOVEA.L (A7)+,A6
RTS
kcmpstr_ii:
MOVEM.L 4(A7),A0-A1
MOVEQ #-1,D0
LAB_000B:
MOVE.B (A0)+,D1
BEQ.S LAB_000C
CMP.B (A1)+,D1
DBNE D0,LAB_000B
NEG.L D0
BRA.S LAB_000D
LAB_000C:
CMP.B (A1)+,D1
BNE.S LAB_000D
MOVEQ #0,D0
LAB_000D:
RTS
kgetnum:
MOVEM.L D2-D4,-(A7)
LAB_000F:
MOVEQ #0,D2
MOVEQ #0,D3
MOVEQ #0,D4
JSR kgetchar
CMPI.B #$2D,D0
BNE.S LAB_0011
JSR LAB_0001
ADDQ #1,D3
MOVEQ #-1,D4
BRA.S LAB_0011
LAB_0010:
JSR kgetchar
LAB_0011:
CMPI.B #$08,D0
BNE.S LAB_0012
TST D3
BEQ.S LAB_000F
JSR LAB_0001
MOVEQ #32,D0
JSR LAB_0001
MOVEQ #8,D0
JSR LAB_0001
SUBQ #1,D3
BEQ.S LAB_000F
SWAP D2
MOVEQ #0,D1
MOVE D2,D1
DIVU #$000A,D1
SWAP D1
MOVE D1,D2
SWAP D2
DIVU #$000A,D2
MOVE D2,D1
MOVE.L D1,D2
LAB_0012:
CMPI.B #$30,D0
BCS.S LAB_0013
CMPI.B #$39,D0
BHI.S LAB_0013
MOVE.L D2,D1
ASL.L #2,D1
BVS.S LAB_0010
ADD.L D2,D1
BVS.S LAB_0010
ASL.L #1,D1
SUBI.B #$30,D0
ADD.L D0,D1
BCS.S LAB_0010
ADDI.B #$30,D0
MOVE.L D1,D2
JSR LAB_0001
ADDQ #1,D3
LAB_0013:
CMPI.B #$0D,D0
BNE.S LAB_0010
TST.B D4
BEQ.S LAB_0014
NEG.L D2
LAB_0014:
MOVE.L D2,D0
MOVEM.L (A7)+,D2-D4
RTS